"""
数据获取模块
提供数据加载、处理和缓存管理功能
"""

from .data_loader import DataLoader
from .data_processor import DataProcessor
from .cache_manager import CacheManager

# 创建全局实例
cache_manager = CacheManager()
data_processor = DataProcessor()
data_loader = DataLoader(cache_manager, data_processor)

# 导出主要API函数
def load_data(max_points=None, start_date=None, end_date=None):
    """
    加载数据的主要API函数
    
    Args:
        max_points: 最大数据点数量
        start_date: 开始日期
        end_date: 结束日期
    
    Returns:
        处理后的数据列表或错误信息
    """
    return data_loader.load_data(max_points, start_date, end_date)

def get_date_range():
    """
    获取数据日期范围的API函数
    
    Returns:
        包含min_date和max_date的字典或错误信息
    """
    return data_loader.get_date_range()

def preload_data():
    """
    预加载数据的API函数
    """
    return data_loader.preload_data()

def clear_cache():
    """
    清除缓存的API函数
    """
    return cache_manager.clear_cache()

def get_cache_info():
    """
    获取缓存信息的API函数
    """
    return cache_manager.get_cache_info() 